package negocio;

import java.security.MessageDigest;

public class Verificacion {

	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	  public static String encriptarContrasenia(String contrasenia) 
	  {
		    MessageDigest digest = null;
		    byte[] hashdecontraseniaencriptada = null;

		    try {
		    	//se elige algoritmo de encriptacion en java, existen varios. 
		      digest = MessageDigest.getInstance("SHA-512");
		      
		      //convierte string de la contrasenia a un arreglo de bytes, aplicando el algoritmo de Java elegido
		      hashdecontraseniaencriptada = digest.digest(contrasenia.getBytes("UTF-8"));
		    } catch (Exception e) {}

		    // se procede a construir un String que contenga en valor hexadecimal el contenido del arreglo de bytes, 
		    // porque este nuevo string se utilizara luego para insertar la contrasenia encriptada en la BD.
		    String contraseniaencriptadahexadecimal = "";
		    
		    for (int i = 0; i < hashdecontraseniaencriptada.length; i++) 
		    {  
		      String stringhexadecimal = Integer.toHexString(0xff & hashdecontraseniaencriptada[i]);
		      if (stringhexadecimal.length() == 1) {
		        contraseniaencriptadahexadecimal += '0';
		      }
		      contraseniaencriptadahexadecimal += stringhexadecimal;
		    }

		    return contraseniaencriptadahexadecimal;
		  }
	
	
	
	
}
